Field of the Invention
The invention lies in the automotive arts. Specifically, the invention relates to a computing unit in a motor vehicle that supplies an output variable for controlling a function of the motor vehicle in dependence on an input variable. The unit has a first, nonvolatile read-only memory and a second nonvolatile read/write memory. The first memory has stored therein first processing specifications for the calculation of characteristic variables as a function of the input variable and/or as a function of a characteristic-variable parameter, and second processing specifications for the calculation of logic comparison variables. The first and second processing specifications are stored on the basis of characteristic variables.
Computing units or arithmetic units that are used in motor vehicles and that supply an output variable for controlling a function of the motor vehicle--for example of an actuator--are well known: such computing units carry out, for example, the open-loop or closed-loop control of, say, an engine, a transmission, or a vehicle-occupant protection device. The computing unit is usually designed as a microcomputer which has a first, nonvolatile memory that is read only (ROM=Read Only Memory), and a second, nonvolatile memory that can be written to and read (EPROM=Erasable Programmable Read Only Memory), a volatile memory which can be written to and read (RAM=Random Access Memory) and a microprocessor and one or more inputs and outputs. Input variables--for example measurement variables--in the form of analog or digital signals are fed to the computing unit via the inputs. Output variables in the form of control signals are transmitted, for example, to actuators via the outputs. Such a computing unit is arranged, with numerous further electrical components, in a housing. In automotive technology, such a housing containing a control circuit is referred to by the term control device.
The computing unit according to the invention and the closest prior art are explained below in conjunction with the actuation of a vehicle-occupant protection system; however, the computing unit according to the invention is not in any way restricted to this specific application but can be used in any desired control devices of the motor vehicle.
A computing unit of an airbag control device according to FIG. 4 is known from commercial practice. The computing unit evaluates algorithmically, for example, one or more measured signals of acceleration sensors, as input variable EG, and passes on, when necessary, an output variable AG as a trigger signal, for example, to an airbag, a belt pretensioning device or some other restraining means in the vehicle.
Algorithmic processing specifications VV1, VV2, VV4 and VV5 are stored here in a first, nonvolatile read-only memory 1. The first memory 1 is preferably a ROM. A ROM which has once been filled with processing specifications VV can no longer be written to. The computing unit also contains an input 5 which receives the input variable/variables EG, an output 6 which outputs the output variable AG that controls, for example, the airbag. The unit further includes a second memory 2 (EPROM) which is nonvolatile but which is designed so that it can be written to and read, a third, volatile memory 3 (RAM) which is designed so that it can be written to and read, and a processor 4. The processor 4 executes the processing specifications VV which are stored in the first memory 1 and, in doing so, accesses the input variables EG and characteristic-variable parameters KGP stored in the second memory 2, and stores calculated variables in the third memory 3 and supplies output variables AG to the output 6. This computer-internal access to resources is expressed by the broken arrows starting from the processor 4.
In particular, the commercial prior art comprises a computing unit for triggering a vehicle-occupant protection system, in which unit one or more basic variables GG are calculated from one or more input variables EG using a fourth processing specification VV4 stored in the first memory 1 (FIG. 4). FIG. 2a shows six exemplary fourth processing specifications VV4(1) to VV4(6) for calculating six basic variables GG1 to GG6 from an input variable EG. The input variable EG is preferably the acceleration signal supplied by a sensor device for impact detection. The basic variables GG1 to GG6 are, for example, variables which are derived from the input variable EG, such as, for example, a speed acquired by integration of the acceleration, as first basic variable GG1, a basic variable GG2 acquired by double integration of the acceleration, an energy level of the acceleration signal acquired by squaring the acceleration, as basic variable GG3, a speed difference formed by forming the difference between the current speed value and the preceding one, as basic variable GG4, a forward displacement of the vehicle occupant calculated from the acceleration, as basic variable GG5, or a ripple factor calculated from the forward displacement of the vehicle occupant (dynamic of speed difference GG4), as basic variable GG6.
The calculated basic variables GG are stored in the third memory 3 and are used for subsequently calculating characteristic variables KG by means of first processing specifications VV1. Such characteristic variables KG may be, in the first instance, so-called triggering criteria which are compared below with the characteristic variables KG formed as threshold values. For example, according to FIG. 2b six characteristic variables KG1 to KG6 are calculated as a function of the calculated basic variables GG and as a function of the characteristic-variable parameters KGP. For example, the first characteristic variable KG1 is obtained from a multiplication of the first basic variable GG1 by a first characteristic-variable parameter KGP1 plus a multiplication of the second basic parameter GG2 by a second characteristic-variable parameter KGP2. A further characteristic variable KG, for example the fourth characteristic variable KG4, is equivalent to a further characteristic-variable parameter KGP, for example the characteristic-variable parameter KGP8.
The calculated characteristic variables KG are in turn stored in the third memory 3 before they are compared with one another by means of a second processing specification VV2 and as a result supply comparison variables VG which are in turn stored in the third memory 3. According to FIG. 2c, three comparison variables VG1, VG2, VG3 are calculated by in each case two of the six calculated characteristic variables KG being compared. The comparison variables VG preferably supply the binary values 0 or 1 and FALSE or TRUE as the result. Such a comparison variable VG supplies, for example, the information indicating whether the vehicle speed has exceeded a threshold which rises as time progresses.
An output variable AG is calculated by means of a fifth processing specification VV5 which is represented in FIG. 2d. The fifth processing specification VV5 is a logic function that logically links the calculated comparison variables VG by means of Boolean operators. The output variable AG is likewise conceived as a binary variable and assumes the value TRUE or FALSE. Thus, for example, the output variable AG according to FIG. 2d assumes the value TRUE if either the first comparison variable VG1 assumes the value TRUE, or simultaneously the second comparison variable VG2 and the third comparison variable VG3 have the value TRUE. If the output variable AG is TRUE, a signal which fires a vehicle-occupant protection system is emitted via the output 6 of the computing unit. The fifth processing specification VV5 supplies here the information indicating that an airbag is triggered if the vehicle speed exceeds a defined threshold value or if the dynamics of the speed difference exceed a further threshold value, and the forward displacement of the vehicle occupant has at the same time not yet exceeded a third threshold value.
The characteristic-variable parameters KGP in the second memory 2 can be easily changed and thus adapted, for example, to different vehicle types. The logic function, prescribed by the fifth processing specification VV5, of the triggering algorithm is, however, rigidly defined and can be changed only by creating a new ROM mask. Such a process, of course, is costly and time-consuming.
However, owing to ever shorter development cycles it is desirable to be able to change the logic structure of algorithm/processing specifications even if the ROM mask has already been created. It would be possible to develop the processing specifications right up to the time of introduction on a mass-production scale, improve them and implement them on the computing unit without incurring expenditure in terms of time and costs.